#ifndef CAPTUREMANAGER_H
#define CAPTUREMANAGER_H

#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <QImage>

using namespace cv;

namespace controllers {
    class CaptureManager
    {
    public:
        CaptureManager();
        CaptureManager(int camIndex);
        virtual     ~CaptureManager();
        void        setCameraIndex(int camIndex);
        int         getCameraIndex();
        IplImage*   captureIplImage();
        Mat*        captureMatImage();
        QImage      captureQImage();
        QImage      captureQImage(QSize size);

    private:
        int         _cameraIndex;
        CvCapture*  _cvCapture;
    };
}
#endif // CAPTUREMANAGER_H
